﻿#define _CRT_SECURE_NO_WARNINGS 1

class Solution {
public:
    int reverse(int x)
    {
        if (x == 0)
            return 0;

        int answer = 0;
        while (x)//注意将数字转为字符串时，才需要可考虑正负数，-123，123，像直接数字运算的，不需要关心正负数
        {
            if (answer > INT_MAX / 10 || answer < INT_MIN / 10)//防止后面answer * 10超过范围
            {
                return 0;
            }
            answer = answer * 10 + (x % 10);
            x /= 10;
        }
        return answer;
    }
};

/*
给你一个 32 位的有符号整数 x ，返回将 x 中的数字部分反转后的结果。

如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ，就返回 0。

假设环境不允许存储 64 位整数（有符号或无符号）。


示例 1：
输入：x = 123
输出：321

示例 2：
输入：x = -123
输出：-321

示例 3：
输入：x = 120
输出：21
示例 4：

输入：x = 0
输出：0
*/


